1. Field
Example embodiments relate to apparatuses and/or methods that may program data. Also, example embodiments relate to apparatuses and/or methods that may program data in multi-level cell memory devices or multi-bit cell memory devices.
2. Description of Related Art
A single-level cell (SLC) memory device may store one bit of data in a single memory cell. The SLC memory may be referred to as a single-bit cell (SBC) memory. A process of storing one bit of data in a single level cell of the SLC memory device may be referred to as a programming process and may change a threshold voltage of the single level cell. For example, when data of logic value “1” is stored in a single level cell, the single level cell may have a threshold voltage of 1.0 V. When data of logic value “0” is stored in the single level cell, the single level cell may have a threshold voltage of 3.0 V.
Due to a minute electrical characteristic difference between single level cells, the threshold voltage formed in each of the single level cells with the same data programmed may have a distribution within a predetermined range. For example, when a voltage read from a memory cell is greater than 0.5V and less than 1.5V, it may be determined that data stored in the memory cell has a logic value of “1”. When the voltage read from the memory cell is greater than 2.5V and less than 3.5V, it may be determined that the data stored in the memory cell has a logic value of “0”. The data stored in the memory cell may be classified depending on the difference between memory cell currents/voltages during the reading operations.
Meanwhile, a multi-bit cell (MLC) memory device that can store data of two or more bits in a single memory cell has been proposed in response to a need for higher integration of memory. The MLC memory device may also be referred to as a multi-bit cell (MBC) memory. However, as the number of bits stored in the single memory cell increases, reliability may deteriorate and the read-failure rate may increase. To program ‘m’ bits in a single memory cell, any one of 2m threshold voltages may be required to be formed in the memory cell. Due to the minute electrical characteristic difference between memory cells, threshold voltages of memory cells with the same data programmed may form a distribution within a predetermined range. A single threshold voltage distribution may correspond to each of 2m data values that can be generated according to ‘m’ bits.
In the case of the MLC memory device that can store information based on a page unit, in order to store information associated with an mth bit, it may be required to be aware of information associated with first to (m−1)th bits that are stored in the MLC memory device. If information associated with the first to the (m−1)th bits is stored, the MLC memory device may form one threshold voltage among 2(m−1) threshold voltages and perform an internal read operation to be aware of a location of the threshold voltage. The internal read operation may denote a read operation that occurs while performing an MLC program. Therefore, if an error occurs in the internal read operation, it may be possible to misjudge information associated with the first to the (m−1)th bits and thereby move a threshold voltage of the MLC memory device to an undesired location when performing MLC programming. When stored information is read through a normal read operation after the MLC programming is completed, it may be possible to read erroneous information since the MLC memory device has an erroneous threshold voltage, causing an error.
Since the voltage window of a memory may be limited, the distance between 2m distributions of threshold voltage between adjacent bits may decrease as ‘m’ increases, which may cause overlapping of the distributions. If the distributions are overlapped with each other, the read failure rate may increase.